/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package clientes;

import java.io.Serializable;
import java.sql.Date;
import java.util.HashMap;
import padroes.Registro;

/**
 *
 * @author atavares
 */
public class Cliente extends Registro implements Serializable{
    public static String ID = "idCliente";
    public static String NOME = "Nome";
    public static String ENDERECO = "Endereco";
    public static String TELEFONE = "Telefone";
    public static String DATANASCIMENTO = "DataNascimento";
    public static String SEXO = "Sexo";
    public static String TIPOFISICO = "idTipoFisico";
    public static String LOGIN = "Login";
    public static String SENHA = "Senha";
    public static String STATUS = "idtipoStatus";

    public Cliente(){super("clientes");};
    public Cliente(int id, String nome, String endereco,
                   String telefone, Date dataNascimento, String sexo,
                   int tipoFisico, String login, String senha, int status)
    {
        super("clientes");
        this.set(ID, id);
        this.set(NOME, nome);
        this.set(ENDERECO, endereco);
        this.set(TELEFONE, telefone);
        this.set(DATANASCIMENTO, dataNascimento);
        this.set(SEXO, sexo);
        this.set(TIPOFISICO, String.valueOf(tipoFisico));
        this.set(LOGIN, login);
        this.set(SENHA, senha);
        this.set(STATUS, status);

    }

    public Cliente(HashMap<String,Object> campos)
    {
        super("clientes");
        this.setCampos(campos);
    }

    public Boolean match(Cliente criterio, Boolean operador)
    {
        Boolean opAnd = true, opOr = false;
        return (!operador && opAnd) || (!operador && opOr);
    }

    /**
     * @return the id
     */
    public int getId() {
        Integer valor = (Integer)get(ID);
        return valor.intValue();
    }

    /**
     * @return the nome
     */
    public String getNome() {
        String valor = (String)get(NOME);
        return valor;
    }

    /**
     * @return the endereco
     */
    public String getEndereco() {
        String valor = (String)get(ENDERECO);
        return valor;
    }

    /**
     * @return the telefone
     */
    public String getTelefone() {
        String valor = (String)get(TELEFONE);
        return valor;
    }

    /**
     * @return the dataNascimento
     */
    public Date getDataNascimento() {
        Date valor = (Date)get(DATANASCIMENTO);
        return valor;
    }

    /**
     * @return the sexo
     */
    public String getSexo() {
        String valor = (String)get(SEXO);
        return valor;
    }

    /**
     * @return the tipoFisico
     */
    public int getTipoFisico() {
        Integer valor = (Integer)get(TIPOFISICO);
        return valor;
    }

    /**
     * @return the login
     */
    public String getLogin() {
        String valor = (String)get(LOGIN);
        return valor;
    }

    /**
     * @return the senha
     */
    public String getSenha() {
        String valor = (String)get(SENHA);
        return valor;
    }

    /**
     * @return the senha
     */
    public int getStatus() {
        Integer valor = (Integer)get(STATUS);
        return valor.intValue();
    }

    /**
     * @param id the id to set
     */
    public void setId(int id) {

        set(ID, id);
    }

    /**
     * @param nome the nome to set
     */
    public void setNome(String nome) {
        set(NOME, nome);
    }

    /**
     * @param endereco the endereco to set
     */
    public void setEndereco(String endereco) {
        set(ENDERECO, endereco);
    }

    /**
     * @param telefone the telefone to set
     */
    public void setTelefone(String telefone) {
        set(TELEFONE, telefone);
    }

    /**
     * @param dataNascimento the dataNascimento to set
     */
    public void setDataNascimento(Date dataNascimento) {
        set(DATANASCIMENTO, dataNascimento);
    }

    /**
     * @param sexo the sexo to set
     */
    public void setSexo(String sexo) {
        set(SEXO, sexo);
    }

    /**
     * @param tipoFisico the tipoFisico to set
     */
    public void setTipoFisico(int tipoFisico) {
        set(TIPOFISICO, tipoFisico);
    }

    /**
     * @param login the login to set
     */
    public void setLogin(String login) {
        set(LOGIN, login);
    }

    /**
     * @param senha the senha to set
     */
    public void setSenha(String senha) {
        set(SENHA, senha);
    }

    /**
     * @param senha the senha to set
     */
    public void setStatus(int status) {
        set(STATUS, status);
    }

}
